<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <meta http-equiv="X-UA-Compatible" content="IE=edge">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>外边距问题-塌陷问题</title>
  <style>
    .father {
      width: 300px;
      height: 300px;
      background-color: pink;

      /* 解决方法一(推荐) */
      padding-top: 50px;
      box-sizing: border-box;

      /* 解决方法二: 原则->让浏览器找到父级盒子的正确边缘,从而让父级盒子的位置是正确的,只在子级身上产生外边距 */
      /* overflow: hidden; */

      /* 解决方案三: 本质跟overflow一样 */
      /* border-top: 1px solid #000; */
    }
    .son {
      width: 100px;
      height: 100px;
      background-color: orange;

      /* 子级添加上外边距产生现象: 父级标签会下移 */
      margin-top: 50px;
    }
  </style>
</head>
<body>
  <!-- 
    场景: 父子级的标签,子级的添加上外边距会产生塌陷问题
    现象: 导致父级一起向下移动

    解决方法:
      1.取消子级margin, 父级设置padding
      2.父级设置overflow: hidden
      3.父级设置border-top
   -->
   <div class="father">
    <div class="son">son</div>
   </div>
</body>
</html>